package com.zh.domain.vo.project;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.zh.domain.entity.Project;
import com.zh.domain.vo.milestone.MileStoneVo;
import com.zh.domain.vo.task.TaskVo;
import com.zh.domain.vo.user.UserVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.List;

@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@ApiModel(value = "ProjectVo", description = "项目VO")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ProjectVo extends Project {
    @ApiModelProperty("项目负责人")
    private UserVO owner;
    @ApiModelProperty("团队成员(不包含负责人)")
    private List<UserVO> members;
    @ApiModelProperty("创建人")
    private UserVO creator;
    @ApiModelProperty("我的角色0成员1负责人")
    private Integer role;
    @ApiModelProperty("我的标签 前端/后端/测试")
    private String tag;
    @ApiModelProperty("里程碑列表")
    private List<MileStoneVo> mileStoneVoList;
    @ApiModelProperty("任务列表")
    private List<TaskVo> taskVoList;
}
